跳到主要内容

计算机网络 - 传输层

多路复用/分用(传输层)

20250920191454

UDP多路复用/分用:使用二元组(D-IP, D-Port)

20250920191512

TCP多路复用/分用:使用四元组(S-IP, S-Port, D-IP, D-Port)

20250920191531

Rdt2.0 FSM(有限状态机)规约

可能产生位的错误 0 弄成1、1弄成 0

20250920191554

发送方应对,ACK、NAK破坏的包

rdt2.1加入序列号保证消息不被重复处理

20250920191611

收到ACK 的时候,处理下一个消息,序号+1.

接收方应对,ACK、NAK破坏的包

20250920191649

rdt2.2 移除NAK

接收方当消息处理失败时,重发上次的ACK及序号

20250920191709

rdt3.0 分组会丢失

20250920191726

20250920191747

20250920191802

20250920191947

Go-Back-N

20250920192003

Selective Repeat

20250920192018

20250920192043

正确的数学约束关系

2^k ≥ 2N

即:


Ns + Nr ≤ 2^k / 2 = N_max

2N ≤ 2^k
N ≤ 2^(k-1)

其中:

  • k:序列号的比特数
  • 2^k:序列号空间大小
  • N:发送窗口大小(发送方和接收方窗口一般相等)
  • Ns:发送窗口大小
  • Nr:接收窗口大小(SR中常设置 Ns = Nr = N
k(序号比特)序列号空间大小(2^k)最大窗口大小(N ≤)
384
4168
53216

TCP结构

20250920192058

20250920192127

  • 表示:Host A 发出了数据 'C',这是它第 42 号字节。
  • 同时 ACK = 79:它告诉 B:“我已经收到你发来的数据到第 78 字节了,下一个我要的是第 79 字节。”
  • B 发出的数据字节号是 79(这是 B 发送方向的字节号)
  • ACK = 43:B 告诉 A:“我收到了你发来的第 42 字节(就是‘C’),现在我等的是第 43 个字节。”
  • Host A 的下一个字节是 43(它已完成前面42)
  • 它 ACK = 80,表示它已收到 B 发来的字节到第 79,下一字节是 80。

TCP创建和关闭连接

创建

20250920192158

关闭

20250920192549

20250920192558

20250920192610

所有内容来自,保留所有课程著作权限。文档仅限学习使用。

如有侵权联系 whalefallcl@icloud.com

https://www.icourse163.org/learn/HIT-154005?tid=1474180488#/learn/announce

协议
本作品代码部分采用 Apache 2.0协议 进行许可。遵循许可的前提下,你可以自由地对代码进行修改,再发布,可以将代码用作商业用途。但要求你:
  • 署名:在原有代码和衍生代码中,保留原作者署名及代码来源信息。
  • 保留许可证:在原有代码和衍生代码中,保留Apache 2.0协议文件。
本作品文档部分采用 知识共享署名 4.0 国际许可协议 进行许可。遵循许可的前提下,你可以自由地共享,包括在任何媒介上以任何形式复制、发行本作品,亦可以自由地演绎、修改、转换或以本作品为基础进行二次创作。但要求你:
  • 署名:应在使用本文档的全部或部分内容时候,注明原作者及来源信息。
  • 非商业性使用:不得用于商业出版或其他任何带有商业性质的行为。如需商业使用,请联系作者。
  • 相同方式共享的条件:在本文档基础上演绎、修改的作品,应当继续以知识共享署名 4.0国际许可协议进行许可。